草庐IT

C++ Qt : Check the current State of QStateMachine

全部标签

【亲测可用】安装Qt提示“无法下载存档 http://download.qt.io/online/qtsdkrepository...“

下载Qt安装程序exe之后,一般直接双击运行然后,注册登录后,到了第三步【安装程序】时,进行远程检索文件总会卡在这里,无法进行到下一步。报错如下: 解决办法:关闭安装程序,然后,从cmd里启动该安装包,切换到腾讯云。    1.打开cmd    2.打开cmd,进入Qt安装程序exe所在文件夹路径(我的路径是下载文件夹下)    3.执行如下命令:.\qt-unified-windows-x64-4.5.2-online.exe--mirrorhttps://mirrors.cloud.tencent.com/qt/如下图所示: 按回车之后,会自动打开Qt安装程序,然后,继续下一步,就可以看到

Qt开发简易蓝牙调试助手(低功耗蓝牙)

概述Qt中是有蓝牙模块的,直接用此模块开发就行。但是注意使用的是低功耗蓝牙的类,连接方式和经典蓝牙会有区别大致的连接步骤是:搜索附近的蓝牙设备连接指定的蓝牙设备获取服务指定服务进行连接(因为每一种下的特征对象的权限是不一样的,有的只有读取权限,没有写权限,有的则相反,必要时可以直接打印一下查看)获取服务下可用的特征对象监听特征对象的消息变化和向特征对象发送消息界面设计代码设计主界面的.cpp和.h#include"mainwindow.h"#include"ui_mainwindow.h"#include"QBluetoothLocalDevice"MainWindow::MainWindow

Qt5学习笔记:Qt两个窗口(Widget)间传递数据

0x01原理介绍Qt两个窗口之间传递数据实际上还是利用了信号与槽的概念来实现。本质上讲,我们只需要实现A窗口发射信号,B窗口槽函数响应信号即可。首先我们在A窗口的头文件中定义发射的信号:signals:voidsendSignal(QStringmsg);然后在B窗口的头文件中定义槽函数:privateslots:voidrecvSignal(QStringmsg);最后我们需要将信号与槽连接起来,推荐在主窗口的构造函数内实现信号与槽的连接:this->connect(this->ui->widget1,SIGNAL(sendSignal(QString)),this->ui->widget2

QT实现鼠标点击鼠标右键创建菜单(带图标)

最近在开发项目时用到鼠标右键创建菜单的功能,在此做一些记录。功能描述:QT实现点击鼠标右键创建菜单,菜单带图标,并且可以点击菜单栏选项,出现相应的界面。效果如下图所示:实现原理:要实现上图效果,我用到QMenu,创建菜单项,将菜单项加入菜单,然后关联菜单项按钮和相应的槽函数。代码:1.实现菜单  QMenu*pMenu=newQMenu(this);  //菜单初始化pMenu->setStyleSheet("background-color:#1a1a1a;color:#fff;");  //设置菜单样式背景颜色  //设置菜单项QAction*pSettask=newQAction(tr(

解决QT中UI控件布局更改后运行结果没有发生变化的问题

在学习QT中,遇到了一个问题,那就是当我UI中更改了控件布局后,运行的结果却并没有发生改变,于是我上网查找了一些资料,大多略显麻烦。效果如下:这是UI控件更改布局后 这是运行后结果显然,UI文件中并没有更新。我的解决方案是:1.首先在项目文件中找到UI文件并删除(绿色标记文件) 2.在project中的Shadowbuild小方框中取消勾选,再运行(Ctrl+R)就可以更新UI布局了,且运行结果就与UI中的布局一致了。  结果显示:   

QT中如何在主窗口中添加子窗口

1.方法        原理其实很简单,和在窗口上动态(代码的形式)添加控件的方法一样,但需要设置一下子窗口的属性:在子窗口构造函数中添加代码:setWindowFlags(Qt::FramelessWindowHint);作用:隐藏子窗口的标题栏和边框,如果不隐藏的话,子窗口无法嵌套到其它控件上面!2.举例在项目中添加一个子窗口(sub1)  子窗口界面设计:​​​​​​​ 然后代码如下:2.1.主窗口.h#ifndefMAINWINDOW_H#defineMAINWINDOW_H#include#include"sub1.h"QT_BEGIN_NAMESPACEnamespaceUi{cl

Qt 在线安装程序出现网络错误

最近安装Qt时,遇到了一个网络错误:下载https://mirrors.aliyun.com/....时出现网络错误:Errortransferringhttps://mirrors.aliyun.com/...-serverreplied:NotFound比较疑惑的是,他默认的下载地址是aliyun的,然而这个mirrors.aliyun.com无法访问。尝试了以前的增加临时档案库方案,也不行,还是指向的aliyun镜像站。解决方案那么,只能切换镜像源了,这里采用的命令行的形式切换的。这里使用的清华镜像源qt-unified-windows-x64-4.5.2-online.exe--mir

Qt Creator创建项目后报错‘./ui_xx.h‘ file not found

错误提示如图:错误原因:创建项目时勾选了形成xx.ui文件,此ui文件在构建项目后产生,故在没有构建项目前报错属于正常解决办法:构建项目后关闭再重新打开文件,提示即消失  

Qt界面设计——侧边栏隐藏和滑出

在日常项目中,界面布局上经常使用到侧边栏的方式,在侧边栏放置控件进行复合使用,可以实现子功能界面的隐藏和滑出,效果展示如下:  界面控件很简单,主界面QWidget,侧边栏也用一个QWidget和一个按钮QPushbutton来进行组合。通过点击按钮来显示和隐藏侧边栏。主要用到的是控件的move()函数,配合QPropertyAnimation实现动画效果滑动显示隐藏。动画滑出动画效果使用到的是QPropertyAnimation类的setEasingCurve()函数,通过设置函数参数来实现不同的动画效果,具体效果可以通过QtCreate的帮助文件查询到。     mainwindow.h源

使用QT制作贪吃蛇小游戏(含登录注册界面)

代码:login.h#ifndefLOGIN_H#defineLOGIN_H#include#include#include#include#include"widget.h"#include"register.h"#include"userlist.h"#include"user.h"namespaceUi{classLogin;}classLogin:publicQDialog{Q_OBJECTpublic:explicitLogin(QWidget*parent=nullptr);~Login();privateslots:voidon_btn_login_clicked();voido